///**
//=============================================================================================================================================
//	{ Font3D.cpp }
//	Rodeo Game Engine source file
//	Copyright (c) 2010-2011 Marcin Goryca
//=============================================================================================================================================
//*/
//#include "renderer\font3d.h"
//
//using namespace rodeocore;
//using namespace std;
//
//namespace rodeorenderer
//{
//void Font3D::fill(string fontName, ui height, LONG weight, BYTE italic, BYTE strike, BYTE underline)
//{
//	strcpy_s(lfont_.lfFaceName, 32, fontName.c_str());
//	lfont_.lfCharSet = ANSI_CHARSET;
//	lfont_.lfClipPrecision = CLIP_DEFAULT_PRECIS;
//	lfont_.lfEscapement = 0;
//	lfont_.lfOrientation = 0;
//	lfont_.lfHeight = height;
//	lfont_.lfItalic = italic;
//	lfont_.lfOutPrecision = OUT_DEFAULT_PRECIS;
//	lfont_.lfPitchAndFamily = DEFAULT_PITCH;
//	lfont_.lfQuality = DEFAULT_QUALITY;
//	lfont_.lfStrikeOut = strike;
//	lfont_.lfUnderline = underline;
//	lfont_.lfWeight = weight;
//	lfont_.lfWidth = 0;
//}
////===========================================================================================================================================
//void Font3D::set(HDC hdc, string fontName, ui height, LONG weight, BYTE italic, BYTE strike, BYTE underline, float extrusion, int format)
//{
//	fill(fontName, height, weight, italic, strike, underline);
//	hfont_ = CreateFontIndirect(&lfont_);
//	if(!hfont_)
//	{
//		MessageBox(NULL, FONTCREATEFAIL, FONTFAIL, errIconOK);
//		return;
//	}
//
//	GLYPHMETRICSFLOAT glyph[128];
//
//	SelectObject(hdc, hfont_);
//
//	list_id_ = glGenLists(128);
//
//	wglUseFontOutlines(hdc, 0, 128, list_id_, 0.0f, extrusion, format, glyph);
//
//	DeleteObject(hfont_);
//}
////=============================================================================================================================================
//void Font3D::create(HDC hdc, std::string fontName, ui height, LONG weight, BYTE italic, BYTE strike, BYTE underline, float extrusion, int format)
//{
//	set(hdc, fontName, height, weight, italic, strike, underline, extrusion, format);
//}
////=============================================================================================================================================
//void Font3D::print(Colors& color, string text, float x, float y, float z)
//{
//	if((text.empty()) || list_id_ == 0)
//	{
//		MessageBox(NULL, NOTEXTTOPRINT, NOTEXT, MB_OK);
//		return;
//	}
//
//	glColor3f(color.r_, color.g_, color.b_);
//
//	glPushMatrix();
//		glTranslatef(x, y, z);
//		glListBase(list_id_);
//		glCallLists(text.length(), GL_UNSIGNED_BYTE, text.c_str());
//	glPopMatrix();
//}
////==============================================================================================================================================
//void Font3D::print(string text, float x, float y, float z)
//{
//	if(text.empty() || list_id_ == 0)
//	{	
//		MessageBox(NULL, NOTEXTTOPRINT, NOTEXT, errIconOK);
//		return;
//	}
//
//	glPushMatrix();
//		glTranslatef(x, y, z);
//		glListBase(list_id_);
//		glCallLists(text.length(), GL_UNSIGNED_BYTE, text.c_str());
//	glPopMatrix();
//}
////==============================================================================================================================================
//void Font3D::print(float r, float g, float b, string text, float x, float y, float z)
//{
//	if(text.empty() || list_id_ == 0)
//	{
//		MessageBox(NULL, NOTEXTTOPRINT, NOTEXT, errIconOK);
//		return;
//	}
//
//	glColor3f(r, g, b);
//
//	glPushMatrix();
//		glTranslatef(x, y, z);
//		glListBase(list_id_);
//		glCallLists(text.length(), GL_UNSIGNED_BYTE, text.c_str());
//	glPopMatrix();
//}
//}